<?php
/**
 * The Entrance
 * 
 * @package SFramework
 * @author Shuky
 * @since v1.0
 * @version $Id: Main.php 7 2010-04-03 10:12:48Z shuky $
 */
namespace SFramework;

class Main
{
    public function __construct($config = null)
    {
        // 实现初始自动加载
        spl_autoload_register(array(__CLASS__, '_initAutoload'));
        // 初始配置
        $config == null || Config::getInstance()->setConfig($config);
    }
    
    
    /**
     * 载入配置，初始化基本资源
     * @param array $options 配置资源
     */
	public static function init($config = null)
	{
	    return new self($config);
	}
	
	
	/**
	 * 运行
	 */
	public function run()
	{
	    Controller::getInstance()->dispatch();
	}

	
	/**
	 * 初始自动加载
	 */
	protected function _initAutoload($class)
	{
	    include $class .'.php';
	}
}